package 力扣;

/**
 给定两个以字符串形式表示的非负整数 num1 和 num2，返回 num1 和 num2 的乘积，它们的乘积也表示为字符串形式。
 示例 1:
 输入: num1 = "2", num2 = "3"
 输出: "6"
 示例 2:
 输入: num1 = "123", num2 = "456"
 输出: "56088"
 */

public class _43字符串相乘 {
    // 类似于 50题的解法
    public String multiply(String num1, String num2) {
        Integer n1=Integer.valueOf(num1);
        Integer n2=Integer.valueOf(num2);
        int ret =0;
        while(n2>0){
            if((n2&1)==1){ //说明n2的值需要计算到结果中，为 0 可以不用计算，因为最后肯定会为2
                ret+=n1;
            }
            n1<<=1;
            n2>>=1;
        }
        return String.valueOf(ret);
    }
}
